﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="PropertySetCollectionViewModel.cs" >
//   J. Prinz
// </copyright>
// <summary>
//   The PropertySetCollectionViewModel is a collection of <see cref="PropertySetViewModel" /> Elements
//   and implements the ViewModel for the Representation of a List of CAEX-InternalElements which are
//   assigned to a PropertySet RoleClass
// </summary>
// --------------------------------------------------------------------------------------------------------------------

namespace AutomationMLMapper.ViewModels.CAEXObjectCollectionViewModels
{
    using System.Windows.Data;

    using AutomationMLMapper.ViewModels.CAEXObjectViewModels;

    /// <summary>
    ///   The PropertySetCollectionViewModel is a collection of <see cref="PropertySetViewModel" /> Elements
    ///   and implements the ViewModel for the Representation of a List of CAEX-InternalElements which are
    ///   assigned to a PropertySet RoleClass
    /// </summary>
    public class PropertySetCollectionViewModel : CAEXObjectCollectionViewModel<PropertySetViewModel>
    {
        #region Constructors and Destructors

        /// <summary>
        /// Initializes a new instance of the <see cref="PropertySetCollectionViewModel"/> class. 
        /// </summary>
        /// <param name="parent">
        /// Parent of the Elements in the collection 
        /// </param>
        public PropertySetCollectionViewModel(ICAEXObject parent)
            : base(parent)
        {
            var gd = new PropertyGroupDescription("RoleRequirementName");
            this.GroupDescriptions.Add(gd);
        }

        #endregion

        #region Public Properties

        /// <summary>
        ///   DisplayName of the Collection in the UI used in Headers and Labels
        /// </summary>
        public new string DisplayName
        {
            get
            {
                return "PropertySets";
            }
        }

        #endregion
    }
}